In the context of communication of information over a communications channel, such as a wireless channel in a cellular communications systems, it is well known to encode a signal for transmission and to recover the signal by complementary decoding of received data symbols. As indicated above, similar techniques can be used for example for storage of signals on a storage medium.
A convolutional code can be used for such encoding. An (n,k,m) convolutional code provides from k data symbols and m previous data symbols an encoded word of n symbols; it is referred to as a rate k/n code with a constrain length K=m+1 and can be implemented using a coder with m memory stages. A systematic convolutional code is one in which the n symbols of the encoded word directly include the k data symbols to be encoded and n-k error correction symbols. One of the most promising error-correcting coding methods is so-called turbo coding, which uses two relatively simple systematic convolutional coders operating on relatively interleaved data symbols.
An effective method of encoding convolutionally coded data symbols is maximum likelihood (ML) decoding, which involves finding for a received sequence of data symbols an error-free signal sequence that is most likely to have produced the received sequence.
Various forms of ML decoder are known, including maximum a posteriori (MAP) and SOVA decoders, each of which can be implemented with a variety of forms and variations. MAP decoders generally provide the best performance, but involve both forward and backward computation for states in a decoding trellis, so that they result in an undesirable relatively large decoding delay. SOVA decoders involve only forward computation for the decoding trellis states, so that they generally have a smaller decoding delay which is desirable for delay-constrained applications, but their performance is generally inferior to that of MAP decoders.
Accordingly, it would be desirable to provide a ML decoder that has a decoding delay similar to that of a SOVA decoder and a performance similar to that of a MAP decoder.
An object of this invention is to provide an improved method of information processing using a SOVA.